#ifndef LABELEDNODE_H_
#define LABELEDNODE_H_

#include "../syntax_tree.h"
#include "../main_container.h"
#include <vector>
#include <string>
#include <sstream>

extern MainContainer *CompilerData;

class LabeledNode {
private:
	std::vector<std::string> labels;

public:
	LabeledNode(const SyntaxTreeNode *labelNode);
	std::vector<std::string> getLabels();
	bool hasLabel(std::string labelText);

protected:
	std::string getLabelsDebugString();
};

#endif /* LABELEDNODE_H_ */